lib: collect library files in an archive
authorJan Beulich <jbeulich@suse.com>
Fri, 18 Dec 2020 12:17:57 +0000 (13:17 +0100)
committerJan Beulich <jbeulich@suse.com>
Fri, 18 Dec 2020 12:17:57 +0000 (13:17 +0100)
commitf301f9a9e84f3cfd18750065f8a3794c8182c7f0
tree71d28305fd77f69428eb42edc19db3059e25170e
parent7a3b691a8f3aa7720eecaab0e7bd090aa392885a
lib: collect library files in an archive

In order to (subsequently) drop odd things like CONFIG_NEEDS_LIST_SORT
just to avoid bloating binaries when only some arch-es and/or
configurations need generic library routines, combine objects under lib/
into an archive, which the linker then can pick the necessary objects
out of.

Note that we can't use thin archives just yet, until we've raised the
minimum required binutils version suitably.

Note further that --start-group / --end-group get put in place right
away to allow for symbol resolution across all archives, once we gain
multuiple ones.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Wei Liu <wl@xen.org>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Acked-by: Julien Grall <jgrall@amazon.com>
xen/Rules.mk
xen/arch/arm/Makefile
xen/arch/x86/Makefile
xen/lib/Makefile